<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Aria: ArActionRatioInput Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Aria
   &#160;<span id="projectnumber">2.9.4</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classArActionRatioInput.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classArActionRatioInput-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">ArActionRatioInput Class Reference<div class="ingroups"><a class="el" href="group__ActionClasses.html">Predefined ArAction Classes</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Action that requests motion based on abstract ratios provided by diferent input sources.  
 <a href="classArActionRatioInput.html#details">More...</a></p>

<p><code>#include &lt;ArActionRatioInput.h&gt;</code></p>

<p>Inherits <a class="el" href="classArAction.html">ArAction</a>.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad66b9534f561f82ea817b4183d788e1d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad66b9534f561f82ea817b4183d788e1d"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>activate</b> (void)</td></tr>
<tr class="separator:ad66b9534f561f82ea817b4183d788e1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0625d1c138483d1765f956a8f62cb18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0625d1c138483d1765f956a8f62cb18"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#ac0625d1c138483d1765f956a8f62cb18">addActivateCallback</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor, <a class="el" href="classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0">ArListPos::Pos</a> position=<a class="el" href="classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0a3c55111fa6c7f63c41fc0b387f5b57d9">ArListPos::LAST</a>)</td></tr>
<tr class="memdesc:ac0625d1c138483d1765f956a8f62cb18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback that is called when this action is activated. <br /></td></tr>
<tr class="separator:ac0625d1c138483d1765f956a8f62cb18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9ac799d916d5f34418408d261105340"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad9ac799d916d5f34418408d261105340"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#ad9ac799d916d5f34418408d261105340">addDeactivateCallback</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor, <a class="el" href="classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0">ArListPos::Pos</a> position=<a class="el" href="classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0a3c55111fa6c7f63c41fc0b387f5b57d9">ArListPos::LAST</a>)</td></tr>
<tr class="memdesc:ad9ac799d916d5f34418408d261105340"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback that is called when this action is deactivated. <br /></td></tr>
<tr class="separator:ad9ac799d916d5f34418408d261105340"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3067568cfba7f17e62380a84e0a122b7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a3067568cfba7f17e62380a84e0a122b7">addFireCallback</a> (int priority, <a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a3067568cfba7f17e62380a84e0a122b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback functor that is invoked at the begining this action's fire() function, every action/task cycle.  <a href="#a3067568cfba7f17e62380a84e0a122b7">More...</a><br /></td></tr>
<tr class="separator:a3067568cfba7f17e62380a84e0a122b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a84ada69d5cdf2cf8f9b6e430a03fd4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a84ada69d5cdf2cf8f9b6e430a03fd4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a9a84ada69d5cdf2cf8f9b6e430a03fd4">addToConfig</a> (<a class="el" href="classArConfig.html">ArConfig</a> *config, const char *section)</td></tr>
<tr class="memdesc:a9a84ada69d5cdf2cf8f9b6e430a03fd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds to a section in a config. <br /></td></tr>
<tr class="separator:a9a84ada69d5cdf2cf8f9b6e430a03fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49ab4d91580689bd9d319f8e15cc738c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a49ab4d91580689bd9d319f8e15cc738c">ArActionRatioInput</a> (const char *name=&quot;RatioInput&quot;)</td></tr>
<tr class="memdesc:a49ab4d91580689bd9d319f8e15cc738c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#a49ab4d91580689bd9d319f8e15cc738c">More...</a><br /></td></tr>
<tr class="separator:a49ab4d91580689bd9d319f8e15cc738c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadc7368cded3a92c71f657bec440a154"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aadc7368cded3a92c71f657bec440a154"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>deactivate</b> (void)</td></tr>
<tr class="separator:aadc7368cded3a92c71f657bec440a154"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d79b7cf7720661383ba83ea5c9a9b33"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d79b7cf7720661383ba83ea5c9a9b33"></a>
virtual <a class="el" href="classArActionDesired.html">ArActionDesired</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>fire</b> (<a class="el" href="classArActionDesired.html">ArActionDesired</a> currentDesired)</td></tr>
<tr class="separator:a5d79b7cf7720661383ba83ea5c9a9b33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0981a591365c152e7a2a63f372dd7dec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0981a591365c152e7a2a63f372dd7dec"></a>
virtual <a class="el" href="classArActionDesired.html">ArActionDesired</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>getDesired</b> (void)</td></tr>
<tr class="separator:a0981a591365c152e7a2a63f372dd7dec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a038728925ba332e15660f9ca506585be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a038728925ba332e15660f9ca506585be"></a>
virtual const <a class="el" href="classArActionDesired.html">ArActionDesired</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>getDesired</b> (void) const </td></tr>
<tr class="separator:a038728925ba332e15660f9ca506585be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8d9b67b44c6dc5a51cec8602a2fd177"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab8d9b67b44c6dc5a51cec8602a2fd177"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#ab8d9b67b44c6dc5a51cec8602a2fd177">getRotRatio</a> (void)</td></tr>
<tr class="memdesc:ab8d9b67b44c6dc5a51cec8602a2fd177"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the rot ratio (from -100 (full right) to 100 (full left) <br /></td></tr>
<tr class="separator:ab8d9b67b44c6dc5a51cec8602a2fd177"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8bf61587794dcc9a2812488d08e56e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af8bf61587794dcc9a2812488d08e56e3"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#af8bf61587794dcc9a2812488d08e56e3">getThrottleRatio</a> (void)</td></tr>
<tr class="memdesc:af8bf61587794dcc9a2812488d08e56e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the throttle ratio (from 0 (stopped) to 100 (full throttle) <br /></td></tr>
<tr class="separator:af8bf61587794dcc9a2812488d08e56e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9854412b952421590c06526024a7176c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9854412b952421590c06526024a7176c"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a9854412b952421590c06526024a7176c">getTransRatio</a> (void)</td></tr>
<tr class="memdesc:a9854412b952421590c06526024a7176c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the trans ratio (from -100 (full backwards) to 100 (full forwards) <br /></td></tr>
<tr class="separator:a9854412b952421590c06526024a7176c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87cfbb34c2700f0f5667319ae4974cc5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87cfbb34c2700f0f5667319ae4974cc5"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a87cfbb34c2700f0f5667319ae4974cc5">remActivateCallback</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a87cfbb34c2700f0f5667319ae4974cc5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback that was called when this action is activated. <br /></td></tr>
<tr class="separator:a87cfbb34c2700f0f5667319ae4974cc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa558177797e8db883b6217dba6b916ff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa558177797e8db883b6217dba6b916ff"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#aa558177797e8db883b6217dba6b916ff">remDeactivateCallback</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:aa558177797e8db883b6217dba6b916ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback that was called when this action is deactivated. <br /></td></tr>
<tr class="separator:aa558177797e8db883b6217dba6b916ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7fc87f5bc5017df35173041df3e3325e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7fc87f5bc5017df35173041df3e3325e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a7fc87f5bc5017df35173041df3e3325e">remFireCallback</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a7fc87f5bc5017df35173041df3e3325e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback that was added with <a class="el" href="classArActionRatioInput.html#a3067568cfba7f17e62380a84e0a122b7" title="Adds a callback functor that is invoked at the begining this action&#39;s fire() function, every action/task cycle. ">addFireCallback()</a> <br /></td></tr>
<tr class="separator:a7fc87f5bc5017df35173041df3e3325e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6bf656b11a38b48404eff0347d4bd64"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#ad6bf656b11a38b48404eff0347d4bd64">setLatRatio</a> (double latRatio)</td></tr>
<tr class="memdesc:ad6bf656b11a38b48404eff0347d4bd64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the lat ratio (from -100 (one way) to 100 (the other))  <a href="#ad6bf656b11a38b48404eff0347d4bd64">More...</a><br /></td></tr>
<tr class="separator:ad6bf656b11a38b48404eff0347d4bd64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d32d2e1a0342367365755d57946a74c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a0d32d2e1a0342367365755d57946a74c">setParameters</a> (double fullThrottleForwards, double fullThrottleBackwards, double rotAtFullForwards, double rotAtFullBackwards, double rotAtStopped, double latAtFullForwards=0, double latAtFullBackwards=0, double latAtStopped=0)</td></tr>
<tr class="memdesc:a0d32d2e1a0342367365755d57946a74c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the parameters.  <a href="#a0d32d2e1a0342367365755d57946a74c">More...</a><br /></td></tr>
<tr class="separator:a0d32d2e1a0342367365755d57946a74c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac046fae8264b429a4f29fd6f28e772f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#ac046fae8264b429a4f29fd6f28e772f8">setRatios</a> (double transRatio, double rotRatio, double throttleRatio, double latRatio=0)</td></tr>
<tr class="memdesc:ac046fae8264b429a4f29fd6f28e772f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set ratios.  <a href="#ac046fae8264b429a4f29fd6f28e772f8">More...</a><br /></td></tr>
<tr class="separator:ac046fae8264b429a4f29fd6f28e772f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7eb50f3995111925e616894c2cf2477b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a7eb50f3995111925e616894c2cf2477b">setRotRatio</a> (double rotRatio)</td></tr>
<tr class="memdesc:a7eb50f3995111925e616894c2cf2477b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the rot ratio (from -100 (full right) to 100 (full left)  <a href="#a7eb50f3995111925e616894c2cf2477b">More...</a><br /></td></tr>
<tr class="separator:a7eb50f3995111925e616894c2cf2477b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dba0ad9a21a28211750fc4e055619dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#a4dba0ad9a21a28211750fc4e055619dc">setThrottleRatio</a> (double throttleRatio)</td></tr>
<tr class="memdesc:a4dba0ad9a21a28211750fc4e055619dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the throttle ratio (from 0 (stopped) to 100 (full throttle)  <a href="#a4dba0ad9a21a28211750fc4e055619dc">More...</a><br /></td></tr>
<tr class="separator:a4dba0ad9a21a28211750fc4e055619dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc9ebadb3a800c45742575a772780b51"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#adc9ebadb3a800c45742575a772780b51">setTransRatio</a> (double transRatio)</td></tr>
<tr class="memdesc:adc9ebadb3a800c45742575a772780b51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the trans ratio (from -100 (full backwards) to 100 (full forwards)  <a href="#adc9ebadb3a800c45742575a772780b51">More...</a><br /></td></tr>
<tr class="separator:adc9ebadb3a800c45742575a772780b51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accfca20902a0f332c28e355254ee63fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="accfca20902a0f332c28e355254ee63fb"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArActionRatioInput.html#accfca20902a0f332c28e355254ee63fb">~ArActionRatioInput</a> ()</td></tr>
<tr class="memdesc:accfca20902a0f332c28e355254ee63fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:accfca20902a0f332c28e355254ee63fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classArAction"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classArAction')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classArAction.html">ArAction</a></td></tr>
<tr class="memitem:a4341cda2464899c839e370b514af929b inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4341cda2464899c839e370b514af929b"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a4341cda2464899c839e370b514af929b">ArAction</a> (const char *name, const char *description=&quot;&quot;)</td></tr>
<tr class="memdesc:a4341cda2464899c839e370b514af929b inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:a4341cda2464899c839e370b514af929b inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf64e5031c86d059500b93f402aa70d9 inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classArArg.html">ArArg</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#adf64e5031c86d059500b93f402aa70d9">getArg</a> (int number) const </td></tr>
<tr class="memdesc:adf64e5031c86d059500b93f402aa70d9 inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the numbered argument.  <a href="#adf64e5031c86d059500b93f402aa70d9">More...</a><br /></td></tr>
<tr class="separator:adf64e5031c86d059500b93f402aa70d9 inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6620d41b1e490476796696e8a70e7544 inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6620d41b1e490476796696e8a70e7544"></a>
virtual <a class="el" href="classArArg.html">ArArg</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a6620d41b1e490476796696e8a70e7544">getArg</a> (int number)</td></tr>
<tr class="memdesc:a6620d41b1e490476796696e8a70e7544 inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the numbered argument. <br /></td></tr>
<tr class="separator:a6620d41b1e490476796696e8a70e7544 inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a19edfe254b794aa2dddb163d095905 inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a19edfe254b794aa2dddb163d095905"></a>
virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a5a19edfe254b794aa2dddb163d095905">getDescription</a> (void) const </td></tr>
<tr class="memdesc:a5a19edfe254b794aa2dddb163d095905 inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the long description of the action. <br /></td></tr>
<tr class="separator:a5a19edfe254b794aa2dddb163d095905 inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77fd754d342d7662090f462e27971e08 inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a77fd754d342d7662090f462e27971e08"></a>
virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a77fd754d342d7662090f462e27971e08">getName</a> (void) const </td></tr>
<tr class="memdesc:a77fd754d342d7662090f462e27971e08 inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the name of the action. <br /></td></tr>
<tr class="separator:a77fd754d342d7662090f462e27971e08 inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a512f3a727095b1240f30558d32fe0f5b inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a512f3a727095b1240f30558d32fe0f5b"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a512f3a727095b1240f30558d32fe0f5b">getNumArgs</a> (void) const </td></tr>
<tr class="memdesc:a512f3a727095b1240f30558d32fe0f5b inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the number of arguments this action takes. <br /></td></tr>
<tr class="separator:a512f3a727095b1240f30558d32fe0f5b inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae62a517795a31625bf3a2bb2ea8abac0 inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae62a517795a31625bf3a2bb2ea8abac0"></a>
<a class="el" href="classArRobot.html">ArRobot</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#ae62a517795a31625bf3a2bb2ea8abac0">getRobot</a> () const </td></tr>
<tr class="memdesc:ae62a517795a31625bf3a2bb2ea8abac0 inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the robot we are controlling, which was set by <a class="el" href="classArAction.html#a51b27da0403d43cd916cbf49ba7ddc23" title="Sets the robot this action is driving. ">setRobot()</a> <br /></td></tr>
<tr class="separator:ae62a517795a31625bf3a2bb2ea8abac0 inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72db278f558206fdec03cbc15ac72104 inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a72db278f558206fdec03cbc15ac72104"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a72db278f558206fdec03cbc15ac72104">isActive</a> (void) const </td></tr>
<tr class="memdesc:a72db278f558206fdec03cbc15ac72104 inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether the action is active or not. <br /></td></tr>
<tr class="separator:a72db278f558206fdec03cbc15ac72104 inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e1aaaf9de9b50f7732043a3772f53d7 inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e1aaaf9de9b50f7732043a3772f53d7"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a5e1aaaf9de9b50f7732043a3772f53d7">log</a> (bool verbose=true) const </td></tr>
<tr class="memdesc:a5e1aaaf9de9b50f7732043a3772f53d7 inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Log information about this action using <a class="el" href="classArLog.html" title="Logging utility class. ">ArLog</a>. <br /></td></tr>
<tr class="separator:a5e1aaaf9de9b50f7732043a3772f53d7 inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51b27da0403d43cd916cbf49ba7ddc23 inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a51b27da0403d43cd916cbf49ba7ddc23">setRobot</a> (<a class="el" href="classArRobot.html">ArRobot</a> *robot)</td></tr>
<tr class="memdesc:a51b27da0403d43cd916cbf49ba7ddc23 inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the robot this action is driving.  <a href="#a51b27da0403d43cd916cbf49ba7ddc23">More...</a><br /></td></tr>
<tr class="separator:a51b27da0403d43cd916cbf49ba7ddc23 inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05bc460d965589515a007f136a03d15a inherit pub_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a05bc460d965589515a007f136a03d15a"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a05bc460d965589515a007f136a03d15a">~ArAction</a> ()</td></tr>
<tr class="memdesc:a05bc460d965589515a007f136a03d15a inherit pub_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Desructor. <br /></td></tr>
<tr class="separator:a05bc460d965589515a007f136a03d15a inherit pub_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a6754de8ac8489af1274cbc28ff50be24"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6754de8ac8489af1274cbc28ff50be24"></a>
std::list&lt; <a class="el" href="classArFunctor.html">ArFunctor</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myActivateCallbacks</b></td></tr>
<tr class="separator:a6754de8ac8489af1274cbc28ff50be24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2e8397beff8ef749e2ac8fa79c463fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af2e8397beff8ef749e2ac8fa79c463fa"></a>
std::list&lt; <a class="el" href="classArFunctor.html">ArFunctor</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myDeactivateCallbacks</b></td></tr>
<tr class="separator:af2e8397beff8ef749e2ac8fa79c463fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d820ac9176b9114f14f71cf2d434511"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9d820ac9176b9114f14f71cf2d434511"></a>
<a class="el" href="classArActionDesired.html">ArActionDesired</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myDesired</b></td></tr>
<tr class="separator:a9d820ac9176b9114f14f71cf2d434511"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ce552342f5b7ecf5a4aa39b04b171f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ce552342f5b7ecf5a4aa39b04b171f3"></a>
std::multimap&lt; int, <a class="el" href="classArFunctor.html">ArFunctor</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myFireCallbacks</b></td></tr>
<tr class="separator:a9ce552342f5b7ecf5a4aa39b04b171f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedee6a61b58c3776ff346910d89654ba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aedee6a61b58c3776ff346910d89654ba"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myFullThrottleBackwards</b></td></tr>
<tr class="separator:aedee6a61b58c3776ff346910d89654ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1063e64bc8a606dd0d959b024f1078b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1063e64bc8a606dd0d959b024f1078b6"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myFullThrottleForwards</b></td></tr>
<tr class="separator:a1063e64bc8a606dd0d959b024f1078b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35122ea6d82fbed6b197800c48cef801"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35122ea6d82fbed6b197800c48cef801"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myLatAtFullBackwards</b></td></tr>
<tr class="separator:a35122ea6d82fbed6b197800c48cef801"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a415e36a63cac620703d083b6bccda346"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a415e36a63cac620703d083b6bccda346"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myLatAtFullForwards</b></td></tr>
<tr class="separator:a415e36a63cac620703d083b6bccda346"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bbac0c09ee5a37a0069d876d3784edc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9bbac0c09ee5a37a0069d876d3784edc"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myLatAtStopped</b></td></tr>
<tr class="separator:a9bbac0c09ee5a37a0069d876d3784edc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a441287cf5e7d1c3a195c0b1bbcc5a7ff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a441287cf5e7d1c3a195c0b1bbcc5a7ff"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myLatDeadZone</b></td></tr>
<tr class="separator:a441287cf5e7d1c3a195c0b1bbcc5a7ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b3e1acd5fd27dccd3c0ca710097028f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b3e1acd5fd27dccd3c0ca710097028f"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myLatRatio</b></td></tr>
<tr class="separator:a5b3e1acd5fd27dccd3c0ca710097028f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28b16c6ddec3fdbbb7d3567b748d041d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28b16c6ddec3fdbbb7d3567b748d041d"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myPrinting</b></td></tr>
<tr class="separator:a28b16c6ddec3fdbbb7d3567b748d041d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3fe36a13f793fed1f393db5e0fc3bc9e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3fe36a13f793fed1f393db5e0fc3bc9e"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myRotAtFullBackwards</b></td></tr>
<tr class="separator:a3fe36a13f793fed1f393db5e0fc3bc9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae0aba6221e7c1f9a35882b24e6f329a0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae0aba6221e7c1f9a35882b24e6f329a0"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myRotAtFullForwards</b></td></tr>
<tr class="separator:ae0aba6221e7c1f9a35882b24e6f329a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6043473f699a212a2ff56d432ac76a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6043473f699a212a2ff56d432ac76a7"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myRotAtStopped</b></td></tr>
<tr class="separator:aa6043473f699a212a2ff56d432ac76a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74fc78514405b1c56a4f49e9296456e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74fc78514405b1c56a4f49e9296456e5"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myRotDeadZone</b></td></tr>
<tr class="separator:a74fc78514405b1c56a4f49e9296456e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92ce736ee83a08ff0c072055d0029191"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92ce736ee83a08ff0c072055d0029191"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myRotRatio</b></td></tr>
<tr class="separator:a92ce736ee83a08ff0c072055d0029191"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2bccc1490c30d899c5f9778402aa239"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac2bccc1490c30d899c5f9778402aa239"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myThrottleRatio</b></td></tr>
<tr class="separator:ac2bccc1490c30d899c5f9778402aa239"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bee637aa8555f67b73e1c8024dd23fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8bee637aa8555f67b73e1c8024dd23fa"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myTransDeadZone</b></td></tr>
<tr class="separator:a8bee637aa8555f67b73e1c8024dd23fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4169bd47aa33a33e720c30afc529a897"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4169bd47aa33a33e720c30afc529a897"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myTransRatio</b></td></tr>
<tr class="separator:a4169bd47aa33a33e720c30afc529a897"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classArAction"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classArAction')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classArAction.html">ArAction</a></td></tr>
<tr class="memitem:a70d443457e6f0b80b434530c7d987b3f inherit pro_attribs_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70d443457e6f0b80b434530c7d987b3f"></a>
std::map&lt; int, <a class="el" href="classArArg.html">ArArg</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myArgumentMap</b></td></tr>
<tr class="separator:a70d443457e6f0b80b434530c7d987b3f inherit pro_attribs_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ca1ce8c5a89ee6f0c4ee79d2f534984 inherit pro_attribs_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3ca1ce8c5a89ee6f0c4ee79d2f534984"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myDescription</b></td></tr>
<tr class="separator:a3ca1ce8c5a89ee6f0c4ee79d2f534984 inherit pro_attribs_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af20f687ef5e108741edc2a5848700271 inherit pro_attribs_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af20f687ef5e108741edc2a5848700271"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myIsActive</b></td></tr>
<tr class="separator:af20f687ef5e108741edc2a5848700271 inherit pro_attribs_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0ebdaed2cabe36c51e9b995406fdb1d inherit pro_attribs_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0ebdaed2cabe36c51e9b995406fdb1d"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myName</b></td></tr>
<tr class="separator:ad0ebdaed2cabe36c51e9b995406fdb1d inherit pro_attribs_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20f29d8774f45e3508211c39e2afb9ce inherit pro_attribs_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a20f29d8774f45e3508211c39e2afb9ce"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myNumArgs</b></td></tr>
<tr class="separator:a20f29d8774f45e3508211c39e2afb9ce inherit pro_attribs_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a265851e04729e51a2a72d1ab4f1c5ed8 inherit pro_attribs_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a265851e04729e51a2a72d1ab4f1c5ed8"></a>
<a class="el" href="classArRobot.html">ArRobot</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a265851e04729e51a2a72d1ab4f1c5ed8">myRobot</a></td></tr>
<tr class="memdesc:a265851e04729e51a2a72d1ab4f1c5ed8 inherit pro_attribs_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">The robot we are controlling, set by the action resolver using <a class="el" href="classArAction.html#a51b27da0403d43cd916cbf49ba7ddc23" title="Sets the robot this action is driving. ">setRobot()</a> <br /></td></tr>
<tr class="separator:a265851e04729e51a2a72d1ab4f1c5ed8 inherit pro_attribs_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classArAction"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classArAction')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classArAction.html">ArAction</a></td></tr>
<tr class="memitem:aceff6f8ad785ab52a79c6d847ed0ea61 inherit pub_static_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aceff6f8ad785ab52a79c6d847ed0ea61"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#aceff6f8ad785ab52a79c6d847ed0ea61">getDefaultActivationState</a> (void)</td></tr>
<tr class="memdesc:aceff6f8ad785ab52a79c6d847ed0ea61 inherit pub_static_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the default activation state for all ArActions. <br /></td></tr>
<tr class="separator:aceff6f8ad785ab52a79c6d847ed0ea61 inherit pub_static_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3543892f92fbbfa9bb3f9e0b0d199f51 inherit pub_static_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3543892f92fbbfa9bb3f9e0b0d199f51"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#a3543892f92fbbfa9bb3f9e0b0d199f51">setDefaultActivationState</a> (bool defaultActivationState)</td></tr>
<tr class="memdesc:a3543892f92fbbfa9bb3f9e0b0d199f51 inherit pub_static_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the default activation state for all ArActions. <br /></td></tr>
<tr class="separator:a3543892f92fbbfa9bb3f9e0b0d199f51 inherit pub_static_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classArAction"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classArAction')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classArAction.html">ArAction</a></td></tr>
<tr class="memitem:ad6e1c757a5232752a9b05b18e8ef5091 inherit pro_methods_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad6e1c757a5232752a9b05b18e8ef5091"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArAction.html#ad6e1c757a5232752a9b05b18e8ef5091">setNextArgument</a> (<a class="el" href="classArArg.html">ArArg</a> const &amp;arg)</td></tr>
<tr class="memdesc:ad6e1c757a5232752a9b05b18e8ef5091 inherit pro_methods_classArAction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the argument type for the next argument (must only be used in a constructor!) <br /></td></tr>
<tr class="separator:ad6e1c757a5232752a9b05b18e8ef5091 inherit pro_methods_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_attribs_classArAction"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_classArAction')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="classArAction.html">ArAction</a></td></tr>
<tr class="memitem:a5335a29c1c08e3fa97228635b38986fe inherit pro_static_attribs_classArAction"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5335a29c1c08e3fa97228635b38986fe"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>ourDefaultActivationState</b> = true</td></tr>
<tr class="separator:a5335a29c1c08e3fa97228635b38986fe inherit pro_static_attribs_classArAction"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Action that requests motion based on abstract ratios provided by diferent input sources. </p>
<p>This action interprets input drive commands as three abstract ratios, translation, rotation, and throttle. (In this way it mimics many joysticks.) The translation speed input ranges from -100 to 100, where -100 requests maximum backwards speed, and 100 requests maximum forward speed, 0 requests no translational speed, and values in between request a linear percentage of the maximum. Similarly, rotation speed input ranges from -100 to 100, where -100 indicates maximum rightwards or clockwise rotation, 100 indicates maximum leftwards or counter-clockwise rotation, 0 requests no rotation, and values in between request a linear percentage of the maximum. The throttle input scales the other speed, and ranges from 0 (no motion) to 100 (maximum motion).</p>
<p>Seperate objects (e.g. <a class="el" href="classArRatioInputKeydrive.html" title="This will use the keyboard arrow keys and the ArActionRatioInput to drive the robot. ">ArRatioInputKeydrive</a>, <a class="el" href="classArRatioInputJoydrive.html" title="Use computer joystick to control an ArActionRatioInput and drive the robot. ">ArRatioInputJoydrive</a>, ArRAtionInputRobotJoydrive) are used to provide input.</p>
<p>When this action is activated it resets all its input ratios to 0 (including throttle).</p>
<p>Configuration parameters are used to map the maximum ratios to actual robot speeds. These are set be default to the robot's maximum configured velocities at startup but you can override them with <a class="el" href="classArConfig.html" title="Stores configuration information which may be read to and from files or other sources. ">ArConfig</a> parameters (and call <a class="el" href="classArActionRatioInput.html#a9a84ada69d5cdf2cf8f9b6e430a03fd4" title="Adds to a section in a config. ">addToConfig()</a>) or <a class="el" href="classArActionRatioInput.html#a0d32d2e1a0342367365755d57946a74c" title="Sets the parameters. ">setParameters()</a>.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArRatioInputKeydrive.html" title="This will use the keyboard arrow keys and the ArActionRatioInput to drive the robot. ">ArRatioInputKeydrive</a> </dd>
<dd>
<a class="el" href="classArRatioInputJoydrive.html" title="Use computer joystick to control an ArActionRatioInput and drive the robot. ">ArRatioInputJoydrive</a> </dd>
<dd>
<a class="el" href="classArRatioInputRobotJoydrive.html" title="Use robot&#39;s joystick to control an ArActionRatioInput action and drive the robot. ...">ArRatioInputRobotJoydrive</a> </dd></dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a49ab4d91580689bd9d319f8e15cc738c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ArActionRatioInput::ArActionRatioInput </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em> = <code>&quot;RatioInput&quot;</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the action </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a3067568cfba7f17e62380a84e0a122b7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArActionRatioInput::addFireCallback </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>priority</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArFunctor.html">ArFunctor</a> *&#160;</td>
          <td class="paramname"><em>functor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds a callback functor that is invoked at the begining this action's fire() function, every action/task cycle. </p>
<p>These callbacks are actually called in the order of lowest number to highest number, but this still means higher numbers are more important since throttle set by those will override the lower.</p>
<p>(More than one can be added, they will be invoked according to <em>priority</em>.) </p>

</div>
</div>
<a class="anchor" id="ad6bf656b11a38b48404eff0347d4bd64"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArActionRatioInput::setLatRatio </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>latRatio</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the lat ratio (from -100 (one way) to 100 (the other)) </p>
<p>This checks the input for greather than 100 and less than -100 and pulls it to within that range. </p>

</div>
</div>
<a class="anchor" id="a0d32d2e1a0342367365755d57946a74c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArActionRatioInput::setParameters </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>fullThrottleForwards</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>fullThrottleBackwards</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>rotAtFullForwards</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>rotAtFullBackwards</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>rotAtStopped</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>latAtFullForwards</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>latAtFullBackwards</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>latAtStopped</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fullThrottleForwards</td><td>the speed we go forwards at at full throttle (mm/sec)</td></tr>
    <tr><td class="paramname">fullThrottleBackwards</td><td>the speed we go backwards at at full throttle (mm/sec)</td></tr>
    <tr><td class="paramname">rotAtFullForwards</td><td>the speed we turn at at full throttle forwards</td></tr>
    <tr><td class="paramname">rotAtFullBackwards</td><td>the speed we turn at at full throttle backwards</td></tr>
    <tr><td class="paramname">rotAtStopped</td><td>the speed we turn at if there is no forward/backward motion</td></tr>
    <tr><td class="paramname">rotAtFullForwards</td><td>the speed we turn at at full throttle forwards</td></tr>
    <tr><td class="paramname">latAtFullForwards</td><td>the lateral speed we go at at full throttle (mm/sec) (if robot supports lateral motion)</td></tr>
    <tr><td class="paramname">latAtFullBackwards</td><td>the lateral speed we go at at full throttle (mm/sec) (if robot supports lateral motion)</td></tr>
    <tr><td class="paramname">latAtStopped</td><td>the lateral speed we go at if stopped. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac046fae8264b429a4f29fd6f28e772f8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArActionRatioInput::setRatios </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>transRatio</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>rotRatio</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>throttleRatio</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>latRatio</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set ratios. </p>
<p>This checks the inputs and pulls them into the valid range. </p>

</div>
</div>
<a class="anchor" id="a7eb50f3995111925e616894c2cf2477b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArActionRatioInput::setRotRatio </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>rotRatio</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the rot ratio (from -100 (full right) to 100 (full left) </p>
<p>This checks the input for greather than 100 and less than -100 and pulls it to within that range. </p>

</div>
</div>
<a class="anchor" id="a4dba0ad9a21a28211750fc4e055619dc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArActionRatioInput::setThrottleRatio </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>throttleRatio</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the throttle ratio (from 0 (stopped) to 100 (full throttle) </p>
<p>This checks the input for greather than 100 and less than 0 and pulls it to within that range. </p>

</div>
</div>
<a class="anchor" id="adc9ebadb3a800c45742575a772780b51"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArActionRatioInput::setTransRatio </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>transRatio</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the trans ratio (from -100 (full backwards) to 100 (full forwards) </p>
<p>This checks the input for greather than 100 and less than -100 and pulls it to within that range. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>ArActionRatioInput.h</li>
<li>ArActionRatioInput.cpp</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="classArActionRatioInput.html">ArActionRatioInput</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
